bitkeeper revision 1.1662.1.4 (42a449c17mlN0vfY0fcb2leEnvVb-A)
authorcl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Mon, 6 Jun 2005 13:04:01 +0000 (13:04 +0000)
committercl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Mon, 6 Jun 2005 13:04:01 +0000 (13:04 +0000)
usbif.py, netif.py, controller.py, console.py, blkif.py, XendDomainInfo.py:
  Cleanup imports.
XendDomain.py:
  Cleanup imports and some function comments.
  BUG: Add back missing _add_domain call in domain_create.
SrvDaemon.py:
  g/c DEBUG and DAEMONIZE.
XendCheckpoint.py:
  Cleanup domain id/name confusion.
Signed-off-by: Mike Wray <mike.wray@hp.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
tools/python/xen/xend/XendCheckpoint.py
tools/python/xen/xend/XendDomain.py
tools/python/xen/xend/XendDomainInfo.py
tools/python/xen/xend/server/SrvDaemon.py
tools/python/xen/xend/server/blkif.py
tools/python/xen/xend/server/console.py
tools/python/xen/xend/server/controller.py
tools/python/xen/xend/server/netif.py
tools/python/xen/xend/server/usbif.py

index 1084d228a9449d98f954fa598875af723cdb2162..654fb022c59d10a4a20d5e7608d0d2fa6cd32eed 100644 (file)
@@ -63,10 +63,10 @@ def save(xd, fd, dominfo):
             if fd == child.fromchild.fileno():
                 l = child.fromchild.readline()
                 if l.rstrip() == "suspend":
-                    log.info("suspending %s" % dominfo.id)
+                    log.info("suspending %d" % dominfo.id)
                     xd.domain_shutdown(dominfo.id, reason='suspend')
                     dominfo.state_wait("suspended")
-                    log.info("suspend %s done" % dominfo.id)
+                    log.info("suspend %d done" % dominfo.id)
                     child.tochild.write("done\n")
                     child.tochild.flush()
         if filter(lambda (fd, event): event & select.POLLHUP, r):
index 5aeb42ca856b3afd5250b15e2bc72a98df5e754b..c7102a6f50d24a274fba6ea2f9f1c5f8d4c6916c 100644 (file)
@@ -7,25 +7,23 @@
 """
 import errno
 import os
-import scheduler
-import string
 import sys
-import traceback
 import time
+import traceback
 
 import xen.lowlevel.xc; xc = xen.lowlevel.xc.new()
 
-from xen.xend.server import relocate
-import sxp
-import XendRoot; xroot = XendRoot.instance()
-import XendCheckpoint
-import XendDB
+from xen.xend import sxp
+from xen.xend import XendRoot; xroot = XendRoot.instance()
+from xen.xend import XendCheckpoint
 from xen.xend.XendDomainInfo import XendDomainInfo, shutdown_reason
-import EventServer; eserver = EventServer.instance()
-from XendError import XendError
-from XendLogging import log
-
+from xen.xend import EventServer; eserver = EventServer.instance()
+from xen.xend.XendError import XendError
+from xen.xend.XendLogging import log
+from xen.xend import scheduler
 from xen.xend.server import channel
+from xen.xend.server import relocate
+from xen.xend import XendDB
 
 __all__ = [ "XendDomain" ]
 
@@ -55,7 +53,6 @@ class XendDomain:
         # So we stuff the XendDomain instance (self) into xroot's components.
         xroot.add_component("xen.xend.XendDomain", self)
         self.domains = XendDomainDict()
-        # Table of domain info indexed by domain id.
         self.db = XendDB.XendDB(self.dbpath)
         eserver.subscribe('xend.virq', self.onVirq)
         self.initial_refresh()
@@ -160,9 +157,9 @@ class XendDomain:
         info = self.domains.get(id)
         if info:
             del self.domains[id]
+            self.db.delete(str(id))
             if notify:
                 eserver.inject('xend.domain.died', [info.name, info.id])
-            self.db.delete(str(id))
 
     def reap(self):
         """Look for domains that have crashed or stopped.
@@ -179,11 +176,9 @@ class XendDomain:
                 casualties.append(d)
         for d in casualties:
             id = d['dom']
-            #print 'reap>', id
             dominfo = self.domains.get(id)
             name = (dominfo and dominfo.name) or '??'
             if dominfo and dominfo.is_terminated():
-                #print 'reap> already terminated:', id
                 continue
             log.debug('XendDomain>reap> domain died name=%s id=%d', name, id)
             if d['shutdown']:
@@ -268,6 +263,7 @@ class XendDomain:
         @return: domain
         """
         dominfo = XendDomainInfo.create(config)
+        self._add_domain(dominfo)
         return dominfo
 
     def domain_restart(self, dominfo):
@@ -296,14 +292,13 @@ class XendDomain:
         """Configure an existing domain. This is intended for internal
         use by domain restore and migrate.
 
-        @param id:       domain id
         @param vmconfig: vm configuration
         """
         config = sxp.child_value(vmconfig, 'config')
         dominfo = XendDomainInfo.restore(config)
         self._add_domain(dominfo)
         return dominfo
-    
+
     def domain_restore(self, src, progress=False):
         """Restore a domain from file.
 
@@ -604,7 +599,7 @@ class XendDomain:
 
         @param id:   domain id
         @param devconfig: device configuration
-        @param devid:  device index
+        @param devid:  device id
         @return: updated device configuration
         """
         dominfo = self.domain_lookup(id)
@@ -616,7 +611,7 @@ class XendDomain:
         """Refresh a device.
 
         @param id:  domain id
-        @param devid:  device index
+        @param devid:  device id
         @param type: device type
         """
         dominfo = self.domain_lookup(id)
@@ -628,7 +623,7 @@ class XendDomain:
         """Destroy a device.
 
         @param id:  domain id
-        @param devid:  device index
+        @param devid:  device id
         @param type: device type
         """
         dominfo = self.domain_lookup(id)
@@ -648,10 +643,10 @@ class XendDomain:
 
     def domain_devtype_get(self, id, type, devid):
         """Get a device from a domain.
-
+        
         @param id:  domain
         @param type: device type
-        @param devid:  device index
+        @param devid:  device id
         @return: device object (or None)
         """
         dominfo = self.domain_lookup(id)
index f7a7668638f932b9ed43738638adf81a34c76252..1746985ced5924d470706171e90bab3339190045 100644 (file)
@@ -14,21 +14,20 @@ import time
 import threading
 
 import xen.lowlevel.xc; xc = xen.lowlevel.xc.new()
-import xen.util.ip
-from xen.xend.server import channel, controller
+from xen.util.ip import check_subnet, get_current_ipgw
 from xen.util.blkif import blkdev_uname_to_file
 
-from server.channel import channelFactory
-import server.SrvDaemon; xend = server.SrvDaemon.instance()
-from server import messages
+from xen.xend.server import channel, controller
+from xen.xend.server import SrvDaemon; xend = SrvDaemon.instance()
+from xen.xend.server import messages
+from xen.xend.server.channel import channelFactory
 
+from xen.xend import sxp
+from xen.xend.PrettyPrint import prettyprintstring
 from xen.xend.XendBootloader import bootloader
-import sxp
-from XendLogging import log
+from xen.xend.XendLogging import log
 from XendError import XendError, VmError
-from XendRoot import get_component
-
-from PrettyPrint import prettyprintstring
+from xen.xend.XendRoot import get_component
 
 """Flag for a block device backend domain."""
 SIF_BLK_BE_DOMAIN = (1<<4)
@@ -145,7 +144,6 @@ def add_device_handler(name, type):
 def get_device_handler(name):
     return device_handlers[name]
 
-
 def dom_get(dom):
     """Get info from xen for an existing domain.
 
@@ -321,7 +319,7 @@ class XendDomainInfo:
 
     def __str__(self):
         s = "domain"
-        s += " id=" + self.id
+        s += " id=" + str(self.id)
         s += " name=" + self.name
         s += " memory=" + str(self.memory)
         console = self.getConsole()
index ec418d5bea979d54ee4c4df893e44b31f0615320..51745ca465523d8fa910f679af59f338c16d9de3 100644 (file)
@@ -32,9 +32,6 @@ import event
 import relocate
 from params import *
 
-DAEMONIZE = 0
-DEBUG = 1
-
 class Daemon:
     """The xend daemon.
     """
index 817ae1b6c41120485f28d175500510aca47be7a1..7c38dec9034bde742508dc902d4c56f373de7a73 100755 (executable)
@@ -3,16 +3,16 @@
 """
 import string
 
-from xen.xend import sxp
-from xen.xend import Blkctl
-from xen.xend.XendError import XendError, VmError
-from xen.xend.XendLogging import log
 from xen.util import blkif
+from xen.xend.XendError import XendError, VmError
 from xen.xend.XendRoot import get_component
+from xen.xend.XendLogging import log
+from xen.xend import sxp
+from xen.xend import Blkctl
 
-import channel
-from controller import CtrlMsgRcvr, Dev, DevController
-from messages import *
+from xen.xend.server import channel
+from xen.xend.server.controller import CtrlMsgRcvr, Dev, DevController
+from xen.xend.server.messages import *
 
 class BlkifBackend:
     """ Handler for the 'back-end' channel to a block device driver domain
index f3dade883bebcec24153b1156b98a6f2521db5d3..4f2a498aac8aceb5c2fd396150dd87c7acbede32 100755 (executable)
@@ -14,9 +14,9 @@ from xen.xend.XendLogging import log
 from xen.xend import XendRoot; xroot = XendRoot.instance()
 from xen.xend import sxp
 
-from controller import CtrlMsgRcvr, Dev, DevController
-from messages import *
-from params import *
+from xen.xend.server.controller import CtrlMsgRcvr, Dev, DevController
+from xen.xend.server.messages import *
+from xen.xend.server.params import *
 
 class ConsoleProtocol(protocol.Protocol):
     """Asynchronous handler for a console socket.
index 9205b2778eac4a60ba12536fcada630019515c40..0459d0b9fc1c5ba353f10df20bc2ca832df8611f 100755 (executable)
@@ -4,7 +4,7 @@ for a domain.
 """
 
 from xen.xend.XendError import XendError
-from messages import msgTypeName, printMsg, getMessageType
+from xen.xend.server.messages import msgTypeName, printMsg, getMessageType
 
 DEBUG = 0
 
index 7c77810ebac1d3dd78f446795aa687aab0ee696b..90e41d03da5105f4cc57ba6e96867d05bc02b718 100755 (executable)
@@ -11,9 +11,9 @@ from xen.xend.XendLogging import log
 from xen.xend import XendVnet
 from xen.xend.XendRoot import get_component
 
-import channel
-from controller import CtrlMsgRcvr, Dev, DevController
-from messages import *
+from xen.xend.server import channel
+from xen.xend.server.controller import CtrlMsgRcvr, Dev, DevController
+from xen.xend.server.messages import *
 
 class NetDev(Dev):
     """A network device.
index 9535fdd2029d4ebf602c574c54c722f9784b74dd..f64ea83d4bb3007de048fdcb7e33ef4a18931332 100644 (file)
@@ -8,9 +8,9 @@ from xen.xend import sxp
 from xen.xend.XendLogging import log
 from xen.xend.XendError import XendError
 
-import channel
-from controller import Dev, DevController
-from messages import *
+from xen.xend.server import channel
+from xen.xend.server.controller import Dev, DevController
+from xen.xend.server.messages import *
 
 class UsbBackend:
     """Handler for the 'back-end' channel to a USB device driver domain